/*****************************************
 * Abhishek Mahanti - amahanti@umich.edu *
 * EECS 281 - Project 1    LM:10.01      *
 * ************************************* */
#define MAXLINELENGTH 1000 
#include <string>
 
using namespace std;

class tile  {
    private:
    char refdirection;
    char name;
    int moves;
    int numCost;
    bool passable;
    public:
    bool isStair(char name);
    bool isPassable();
    char getName();
    void setName();
    tile();
};


class floor {
    private:
    int size;
    tile* allTilesAry;
    tile* get_tile(int x,int y);
    int get_adjacent();
    public:
    char* createGrid(int dimension);
    floor();
    void setSize(int sizeFromFile); 
    int getDimension();
};

class map   {
    private:
    string VersionNumber;
    int nLevels;
    int currentX, currentY;
    int currentFloor;
    public:
    floor floorArray[10];
    map();
    int getLevels();
//    void parseLine(char numberLine[MAXLINELENGTH]);
    void setVersion(string versionNum);
    void setLevels(int numLevels);
};



class movement{
    int hasmoved;
};

class location{
    int x;
    int y;
};

int map::getLevels()
{
    return nLevels;
}

//the parseLine func is in scratch

map::map()  {
    VersionNumber = "none";
    nLevels = 0;
    currentX = 0;
    currentY = 0;
    currentFloor = 0;
}

floor::floor()  {
    int size = 0;
}

void floor::setSize(int sizeFromFile)    {
    size = sizeFromFile;
    cout << size << endl;
}

int floor::getDimension()   {
    return size;
}

void map::setLevels(int numLevels)  {
    nLevels = numLevels;
}

tile::tile()    {
}

char* floor::createGrid(int dimension) {
    char** layout = new char*[dimension];
    for(int a=0;a<dimension;a++)    {
        layout[a]=new char[dimension];
    }
}
